/**
 *
    算法描述：
    解决所需数据结构+算法：
**/
#include<iostream>
#include<vector>
using namespace std;

int main() {
    int n, q;
    cin >> n >> q;
    vector<vector<int>> a(n+1);
    while(q--) {
        int op, x, y, z;
        cin >> op >> x >> y;
        if(a[x].size() < y + 1) a[x].resize(y+1);
        if(op == 1) {
            cin >> z;
            a[x][y] = z;
        } else {
            cout << a[x][y] << endl;
        }
    }
    return 0;
}